home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 28
/
Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso
/
Aminet
/
dev
/
c
/
dice-3.16.lha
/
doc
/
dme.doc
< prev
next >
Wrap
Text File
|
1994-02-13
|
34KB
|
870 lines
dme/dme dme/dme
DME.DOC DME version 1.45 Matthew Dillon
July 1991
DME, (C)Copyright 1987-90, Matthew Dillon. All Rights Reserved.
This software may be distributed for non-profit only. This software is
FREEWARE, not shareware.
Matthew Dillon
891 Regal Rd
Berkeley, Ca. 94708
USA
Source is avalable:
(1) By regular mail (send a disk)
(2) By Electronic mail:
INTERNET: uunet.uu.net!overload!dillon OR
dillon@overload.Berkeley.CA.US
Donations welcome but not solicited (I ain't a starving artist).
icon by Bryce Nesbitt
text markers and the text-block stack by Kevin Seghetti (some of the new
commands for 1.30).
AREXX interface (Bill Hawes' ARexx REXX language interpreter) ported
by Kim DeVaughn
1.42 additions by Markys Wenzel
---------------------------------------------------------------------------
0 Installation
I Overview
II Keymapping key and mouse mapping
III Command Sequences DME commands
IV File Particulars notes on loading and saving files,
V Workbench Support
VI Revision Summary revision numbering, changes made, etc...
VII Compiling compiling instructions
0
INSTALLATION
The NULL: device must be mounted to be able to use the EXECUTE command.
This is so EXECUTE works even if the console window goes away. Otherwise,
simply put DME in an accessable location (usually C:). Put the dme.icon
file in the same directory as DME if you want to access the application
from the workbench (dme.icon is not needed if accessed from a CLI or shell).
People appear to have problems using the EXECUTE command when DME is run
from the workbench. I have no solution yet.
CONFIGURATION of default window placement, pen selection, and most editor
modes (insert/overwrite, margin, etc...) is accomplished by bringing up
DME, setting it up how you like, then selecting the SAVECONFIG menu
option (saves to s:dme.config).
I
OVERVIEW
See REVISIONS section for revisions. DME is an editor designed mainly for
programmers. Although it is not a word processor, it does include many
word processing features such as Word-Wrap and automatic paragraph
formatting. Here is a quick 'features' list:
-control language based on a rich command set accessed manually
or via arbitrary mapping of keys. (Every key may be mapped to 128
different things via qualifier and mouse keys)
-General variables, reference macros as variables, ENV: enviroment
variables (1.30C and beyond).
-fast visual response (it scrolls quickly)... even faster when
BlitzFonts or similar text speedup utilities are installed.
-title-line statistics showing your current position in the file,
file name, whether the file has been modified or not, etc...
-Multiple Windows, ability to iconify windows
-Word Wrap and automatic paragraph formatting.
-ability to map any KEY or MOUSE BUTTON combination.
DME has been designed to allow easy expansion, and I intend to make many
future improvments. It has not been designed for user friendliness, but is
straight forward if you read this document [care]fully.
AS OF 1.40 and until further notice DME no longer takes command line
arguments other than file arguments, or workbench based window arguments.
DME used to take arguments to specify window dimensions. Use the saveconfig
command to setup default window parameters.
The 1.40-41 Version is an experimental intermediate version, documentation may
not be up to date.
Normally, DME will automatically SOURCE two script files, S:.EDRC, and the
.EDRC in your current directory. These files do not have to exist. These
script files usually contain mappings and do things (for example, turn on
savetabs).
II
KEYMAPPING
MOUSE BUTTONS:
The mouse buttons and combinations thereof may now be mapped. The
default mappings for the mouse buttons are as follows:
Left-button: Move cursor to current mouse position
Right-button: Iconify window
Left-button held down while moving mouse tracks the cursor
The iconification features:
-Remembers original window size and placement
-Remembers placement of iconified window when you re-iconify later.
Currently, you will crash the machine if you run out of memory and DME
is unable to open the icon window or original window, so be careful.
see below for mapping the mouse buttons and mouse movement.
KEYBOARD:
The rest of the Functional interface for DME is based on key/mouse/menu
mappings and a rich command set. Unlike other text editors, any
non-qualifier key in DME may be defined to have any meaning whatsoever. It
just so happens that the default keymappings assign such things as the
(return) key to the RETURN function, the (up) key to the UP function,
etc... Keys are named by their keycap labels with the following
exceptions:
the name for Back-Space is BS
the name for numeric keypad keys are prepended with an NK, except for
the Enter key which is named 'ENTER'.
The four cursor control keys are labeled UP, DOWN, LEFT, and RIGHT
The three mouse buttons are labeled RMB, MMB, and LMB.
NOTES:
You must type commands in lower-case, except for text, which can be
either lower or upper case, and for upper-case alpha keys when
specifying keymaps (i.e. A and s-a are the same key). The
exception is the AMIGA qualifier key, which uses 'A' instead of
'a'(Alt).
Each key may be qualified with any combination of CTRL, ALT, SHIFT,
AMIGA, or any of the MOUSE buttons. With 6 qualifiers (7 if your
mouse has a middle button), you can assign up to 64 (128) different
maps to each physical key on the keyboard.
The CAPS-LOCK, when lit, is equivalent to SHIFT only for Alpha keys.
The AMIGA-ALT (aA) combination isn't very usable since Intuition
uses the sequence to duplicate a Mouse SELECT. Other AMIGA
sequences are used by intuition for mouse movement and other things.
Some other qualifier combinations may not be usable due to other
special sequences.
Some keys must be mapped by their lower-case keycap. That is, to
map the '>' key (USA keyboard), you specify shift dot (s-.)
***EXAMPLES:***
tab tab
a-a ALT a
A-a AMIGA a
sA-a SHIFT AMIGA a
s-tab SHIFT tab
c-tab CTRL tab
ac-? ALT-CTRL ?
s-f5 SHIFT F5
nk0 Numeric Keypad 0
cs-nk0 CTRL SHIFT Numeric Keypad 0
L-lmb Left Mouse button pressed
L-mmove Mouse moved while left mouse button held down
LR-lmb left mouse button hit while right mouse button held down
s-. shift . ('>' for USA keyboards)
***************
MAPPING MOUSE BUTTONS
Mouse buttons serve both as QUALIFIERS and as KEYS. Thus, you can map
both normal keystrokes which require a mouse button to be held down:
map L-a ((left button and an a))
as well as the mouse keys themselves:
map L-lmb ((left mouse key))
note that you had to specify the left mouse button down qualifier L as
well as the left mouse button LMB.
If you map the left mouse button, and also map a sequence such as left
mouse button + a:
map L-lmb tomouse
map L-a ((hello))
Note that the first mapping will always get executed even if you
intended L-a (that is, BOTH mappings would get executed). In order
to avoid confusion you might want to UNMAP the system default mapping
for the right mouse button (mapped to ICONIFY) if you wish to apply
combinations to the right mouse button.
MOUSE MOVEMENT is mapped with one or more mouse qualifiers (L, R, M),
plus 'MMOVE' for the key. That is:
map LR-mmove ((moving the mouse with both buttons held down))
Or how bout capping the characters under the mouse while moving the
mouse?
map LR-mmove (tomouse if cl (tlate -32))
DEFAULT KEYMAPPINGS:
All Printable Ascii keys mapped to their ascii equivalent. BS, DEL, UP,
DOWN, LEFT, RIGHT, TAB, S-TAB, and ENTER are mapped properly. These are
the default system keymappings.
map (a-c) (bcopy)
map (a-d) (bdelete)
map (a-down)